/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package subCategoria;

import java.util.List;
import util.ErroAcessoRepositorioException;

/**
 *
 * @author Alberto
 */
public interface IRepositorioSubCategoria {
    
    
    /**
     * Metodo que ira cadastrar o SubCategoria
     * 
     * @param SubCategoria objSubCategoria
     * @return void
     */
    public void cadastrarAtualizar(SubCategoria objSubCategoria) throws ErroAcessoRepositorioException;

    /**
     * Metodo que ira produrar o SubCategoria
     *
     * @param int idSubCategoria
     * @return void
     */
    public SubCategoria procurar(int idSubCategoria) throws SubCategoriaNaoCadastradoException, ErroAcessoRepositorioException;

    /**
     * Metodo que ira verificar a existência do SubCategoria
     *
     * @param int idSubCategoria
     * @return void
     */
    public boolean existe(int idSubCategoria) throws ErroAcessoRepositorioException;

    /**
     * Metodo que ira listar os SubCategorias
     *
     * @return Collection
     */
    public List<SubCategoria> listar(String strComplemento) throws Exception, ErroAcessoRepositorioException;

    /**
     * Método que ira remover o SubCategoria do banco
     * 
     * @param idSubCategoria
     */
    public void remover(int idSubCategoria) throws SubCategoriaNaoCadastradoException, ErroAcessoRepositorioException;

}
